@keyframes flash {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.box {
  font-size: 0;
  max-width: 545px;
  margin: 0 auto;
  overflow: hidden;

  .flash {
    animation: flash ease 2s infinite;
    background-color: #4fa38c;
  }
}

.blockBox {
  display: inline-block;
  width: 20px;
  min-width: 20px;
  height: 20px;
  margin: 3px;

  &.past {
    background-color: #98c3b9;
  }

  &.sleep {
    background-color: #c1e8f9;
  }

  &.work {
    background-color: #ab9f93;
  }

  &.child {
    background-color: #e3a6ab;
  }

  &.parents {
    background-color: #7ea1b7;
  }

  &.surplus {
    background-color: #e2e2e2;
  }

  &.retired {
    background-color: #f8c039;
  }
}